package com.cms.jy.draft.entity;

import lombok.Data;
import java.util.List;

/**
 * 片段实体类
 */
@Data
public class Segment {
    /**
     * 字幕信息
     */
    private Object caption_info;
    
    /**
     * 卡通
     */
    private boolean cartoon;
    
    /**
     * 剪辑
     */
    private Clip clip;
    
    /**
     * 通用关键帧
     */
    private List<Keyframe> common_keyframes;
    
    /**
     * 启用调整
     */
    private boolean enable_adjust;
    
    /**
     * 启用颜色校正调整
     */
    private boolean enable_color_correct_adjust;
    
    /**
     * 启用颜色曲线
     */
    private boolean enable_color_curves;
    
    /**
     * 启用颜色匹配调整
     */
    private boolean enable_color_match_adjust;
    
    /**
     * 启用色轮
     */
    private boolean enable_color_wheels;
    
    /**
     * 启用LUT
     */
    private boolean enable_lut;
    
    /**
     * 启用智能颜色调整
     */
    private boolean enable_smart_color_adjust;
    
    /**
     * 额外材料引用
     */
    private List<String> extra_material_refs;
    
    /**
     * 组ID
     */
    private String group_id;
    
    /**
     * HDR设置
     */
    private HdrSettings hdr_settings;
    
    /**
     * ID
     */
    private String id;
    
    /**
     * 强化音频
     */
    private boolean intensifies_audio;
    
    /**
     * 是否占位符
     */
    private boolean is_placeholder;
    
    /**
     * 是否色调修改
     */
    private boolean is_tone_modify;
    
    /**
     * 关键帧引用
     */
    private List<Object> keyframe_refs;
    
    /**
     * 最后非零音量
     */
    private double last_nonzero_volume;
    
    /**
     * 材料ID
     */
    private String material_id;
    
    /**
     * 渲染索引
     */
    private int render_index;
    
    /**
     * 响应式布局
     */
    private ResponsiveLayout responsive_layout;
    
    /**
     * 反向
     */
    private boolean reverse;
    
    /**
     * 源时间范围
     */
    private TimeRange source_timerange;
    
    /**
     * 速度
     */
    private double speed;
    
    /**
     * 目标时间范围
     */
    private TimeRange target_timerange;
    
    /**
     * 模板ID
     */
    private String template_id;
    
    /**
     * 模板场景
     */
    private String template_scene;
    
    /**
     * 轨道属性
     */
    private int track_attribute;
    
    /**
     * 轨道渲染索引
     */
    private int track_render_index;
    
    /**
     * 统一缩放
     */
    private UniformScale uniform_scale;
    
    /**
     * 可见性
     */
    private boolean visible;
    
    /**
     * 音量
     */
    private double volume;
    
    /**
     * 设置是否占位符
     * @param isPlaceholder 是否占位符
     */
    public void setIs_placeholder(boolean isPlaceholder) {
        this.is_placeholder = isPlaceholder;
    }
    
    /**
     * 设置是否色调修改
     * @param isToneModify 是否色调修改
     */
    public void setIs_tone_modify(boolean isToneModify) {
        this.is_tone_modify = isToneModify;
    }
}